using WowPacketParser.Misc;

namespace WowPacketParser.Enums.Version.V5_1_0_16309
{
    public static class Opcodes_5_1_0
    {
        public static BiDictionary<Opcode, int> Opcodes(Direction direction)
        {
            switch (direction)
            {
                case Direction.ClientToServer:
                case Direction.BNClientToServer:
                    return ClientOpcodes;
                case Direction.ServerToClient:
                case Direction.BNServerToClient:
                    return ServerOpcodes;
                default:
                    return MiscOpcodes;
            }
        }

        private static readonly BiDictionary<Opcode, int> ClientOpcodes = new BiDictionary<Opcode, int>
        {
            {Opcode.CMSG_ACCEPT_LEVEL_GRANT, 0x0D85},
            {Opcode.CMSG_ACCEPT_TRADE, 0x0157},
            {Opcode.CMSG_ACTIVATE_TAXI, 0x04A0},
            {Opcode.CMSG_ACTIVATE_TAXI_EXPRESS, 0x04A9},
            {Opcode.CMSG_ADDON_REGISTERED_PREFIXES, 0x0EF7},
            {Opcode.CMSG_ADD_FRIEND, 0x08AD},
            {Opcode.CMSG_ADD_IGNORE, 0x0749},
            {Opcode.CMSG_VOICE_ADD_IGNORE, 0x0A04},
            {Opcode.CMSG_ALTER_APPEARANCE, 0x0E2D},
            {Opcode.CMSG_AREA_TRIGGER, 0x0647},
            {Opcode.CMSG_AREA_SPIRIT_HEALER_QUERY, 0x064D},
            {Opcode.CMSG_AREA_SPIRIT_HEALER_QUEUE, 0x020D},
            {Opcode.CMSG_ARENA_TEAM_ACCEPT, 0x0BC4},
            {Opcode.CMSG_ARENA_TEAM_CREATE, 0x0E36},
            {Opcode.CMSG_ARENA_TEAM_DECLINE, 0x0A61},
            {Opcode.CMSG_ARENA_TEAM_DISBAND, 0x0B69},
            {Opcode.CMSG_ARENA_TEAM_INVITE, 0x01C8},
            {Opcode.CMSG_ARENA_TEAM_LEADER, 0x09C5},
            {Opcode.CMSG_ARENA_TEAM_LEAVE, 0x08ED},
            {Opcode.CMSG_ARENA_TEAM_QUERY, 0x0368},
            {Opcode.CMSG_ARENA_TEAM_REMOVE, 0x0E04},
            {Opcode.CMSG_ARENA_TEAM_ROSTER, 0x062C},
            {Opcode.CMSG_ATTACK_STOP, 0x0621},
            {Opcode.CMSG_ATTACK_SWING, 0x098D},
            {Opcode.CMSG_AUCTION_LIST_BIDDER_ITEMS, 0x0BE5},
            {Opcode.CMSG_AUCTION_LIST_ITEMS, 0x0E21},
            {Opcode.CMSG_AUCTION_LIST_OWNER_ITEMS, 0x0148},
            {Opcode.CMSG_AUCTION_LIST_PENDING_SALES, 0x0765},
            {Opcode.CMSG_AUCTION_PLACE_BID, 0x0389},
            {Opcode.CMSG_AUCTION_REMOVE_ITEM, 0x006C},
            {Opcode.CMSG_AUCTION_SELL_ITEM, 0x07A1},
            {Opcode.CMSG_AUTH_CONTINUED_SESSION, 0x0EC7},
            {Opcode.CMSG_AUTH_SESSION, 0x0C07},
            {Opcode.CMSG_AUTOBANK_ITEM, 0x0845},
            {Opcode.CMSG_AUTO_EQUIP_ITEM, 0x0D28},
            {Opcode.CMSG_AUTO_EQUIP_ITEM_SLOT, 0x0D60},
            {Opcode.CMSG_AUTO_STORE_BAG_ITEM, 0x0569},
            {Opcode.CMSG_AUTOSTORE_BANK_ITEM, 0x0344},
            {Opcode.CMSG_AUTOSTORE_LOOT_ITEM, 0x0853},
            {Opcode.CMSG_AUTO_DECLINE_GUILD_INVITES, 0x01A9},
            {Opcode.CMSG_BANKER_ACTIVATE, 0x0189},
            {Opcode.CMSG_BATTLEFIELD_LEAVE, 0x003B},
            {Opcode.CMSG_BATTLEFIELD_LIST, 0x099F},
            {Opcode.CMSG_BF_MGR_ENTRY_INVITE_RESPONSE, 0x0EB7},
            {Opcode.CMSG_BF_MGR_QUEUE_EXIT_REQUEST, 0x063E},
            {Opcode.CMSG_BF_MGR_QUEUE_INVITE_RESPONSE, 0x0733},
            {Opcode.CMSG_BF_MGR_QUEUE_REQUEST, 0x0AF2},
            {Opcode.CMSG_BATTLEMASTER_HELLO, 0x066C},
            {Opcode.CMSG_BATTLEMASTER_JOIN, 0x06EB},
            {Opcode.CMSG_BATTLEMASTER_JOIN_ARENA, 0x048F},
            {Opcode.CMSG_BATTLEMASTER_JOIN_RATED, 0x015E},
            {Opcode.CMSG_QUERY_BATTLE_PET_NAME, 0x0E60},
            {Opcode.CMSG_BEGIN_TRADE, 0x04EB},
            {Opcode.CMSG_BINDER_ACTIVATE, 0x030C},
            {Opcode.CMSG_BUG, 0x01E0},
            {Opcode.CMSG_BUSY_TRADE, 0x08DF},
            {Opcode.CMSG_BUY_BACK_ITEM, 0x0EE0},
            {Opcode.CMSG_BUY_BANK_SLOT, 0x0864},
            {Opcode.CMSG_BUY_ITEM, 0x0CEC},
            {Opcode.CMSG_CALENDAR_ADD_EVENT, 0x0E69},
            {Opcode.CMSG_CALENDAR_ARENA_TEAM, 0x0369},
            {Opcode.CMSG_CALENDAR_EVENT_INVITE, 0x0E29},
            {Opcode.CMSG_CALENDAR_EVENT_MODERATOR_STATUS, 0x0008},
            {Opcode.CMSG_CALENDAR_EVENT_REMOVE_INVITE, 0x0D05},
            {Opcode.CMSG_CALENDAR_EVENT_RSVP, 0x08AC},
            {Opcode.CMSG_CALENDAR_EVENT_SIGN_UP, 0x07A0},
            {Opcode.CMSG_CALENDAR_EVENT_STATUS, 0x0820},
            {Opcode.CMSG_CALENDAR_GET_CALENDAR, 0x05A8},
            {Opcode.CMSG_CALENDAR_GET_EVENT, 0x06AC},
            {Opcode.CMSG_CALENDAR_GET_NUM_PENDING, 0x002C},
            {Opcode.CMSG_CALENDAR_GUILD_FILTER, 0x0109},
            {Opcode.CMSG_CALENDAR_REMOVE_EVENT, 0x0624},
            {Opcode.CMSG_CANCEL_AURA, 0x0361},
            {Opcode.CMSG_CANCEL_AUTO_REPEAT_SPELL, 0x041},
            {Opcode.CMSG_CANCEL_CAST, 0x020C},
            {Opcode.CMSG_CANCEL_CHANNELLING, 0x0449},
            {Opcode.CMSG_CANCEL_MOUNT_AURA, 0x084},
            {Opcode.CMSG_CANCEL_QUEUED_SPELL, 0x0587},
            {Opcode.CMSG_CANCEL_TEMP_ENCHANTMENT, 0x002D},
            {Opcode.CMSG_CANCEL_TRADE, 0x04C2},
            {Opcode.CMSG_CAST_SPELL, 0x014C},
            {Opcode.CMSG_CHANGEPLAYER_DIFFICULTY, 0x0117},
            {Opcode.CMSG_CHAT_CHANNEL_ANNOUNCEMENTS, 0x0F7B},
            {Opcode.CMSG_CHAT_CHANNEL_BAN, 0x030B},
            {Opcode.CMSG_CHAT_CHANNEL_DECLINE_INVITE, 0x0AC1},
            {Opcode.CMSG_CHAT_CHANNEL_KICK, 0x0C7A},
            {Opcode.CMSG_CHAT_CHANNEL_MODERATOR, 0x0DAA},
            {Opcode.CMSG_CHAT_CHANNEL_MUTE, 0x02C6},
            {Opcode.CMSG_CHAT_CHANNEL_OWNER, 0x038B},
            {Opcode.CMSG_CHAT_CHANNEL_PASSWORD, 0x0E76},
            {Opcode.CMSG_CHAT_CHANNEL_SILENCE_ALL, 0x0206},
            {Opcode.CMSG_CHAT_CHANNEL_SILENCE_VOICE, 0x05FF},
            {Opcode.CMSG_CHAT_CHANNEL_UNBAN, 0x0FFA},
            {Opcode.CMSG_CHAT_CHANNEL_UNMODERATOR, 0x0EFA},
            {Opcode.CMSG_CHAT_CHANNEL_UNMUTE, 0x07D6},
            {Opcode.CMSG_CHAT_CHANNEL_UNSILENCE_ALL, 0x0F77},
            {Opcode.CMSG_CHAT_CHANNEL_UNSILENCE_VOICE, 0x05F2},
            {Opcode.CMSG_CHAT_CHANNEL_VOICE_ON, 0x0EDB},
            {Opcode.CMSG_CREATE_CHARACTER, 0x0EB3},
            {Opcode.CMSG_CHAR_CUSTOMIZE, 0x0F6D},
            {Opcode.CMSG_CHAR_DELETE, 0x0C2D},
            {Opcode.CMSG_ENUM_CHARACTERS, 0x0146},
            {Opcode.CMSG_CHAR_FACTION_CHANGE, 0x00E5},
            {Opcode.CMSG_CHAR_RACE_CHANGE, 0x0C4C},
            {Opcode.CMSG_CHARACTER_RENAME_REQUEST, 0x0289},
            {Opcode.CMSG_CLEAR_CHANNEL_WATCH, 0x0EC5},
            {Opcode.CMSG_COMMENTATOR_ENTER_INSTANCE, 0x0924},
            {Opcode.CMSG_COMMENTATOR_EXIT_INSTANCE, 0x0689},
            {Opcode.CMSG_COMMENTATOR_GET_MAP_INFO, 0x0A69},
            {Opcode.CMSG_COMMENTATOR_GET_PARTY_INFO, 0x0FBA},
            {Opcode.CMSG_COMMENTATOR_START_WARGAME, 0x010B},
            {Opcode.CMSG_COMPLAINT, 0x0A8C},
            {Opcode.CMSG_COMPLETE_CINEMATIC, 0x03A8},
            {Opcode.CMSG_COMPLETE_MOVIE, 0x078C},
            {Opcode.CMSG_CONNECT_TO_FAILED, 0x01E7},
            {Opcode.CMSG_CONTACT_LIST, 0x04C1},
            {Opcode.CMSG_QUERY_CREATURE, 0x0285},
            {Opcode.CMSG_DANCE_QUERY, 0x06EC},
            {Opcode.CMSG_DB_QUERY_BULK, 0x0537},
            {Opcode.CMSG_DEL_FRIEND, 0x0C4D},
            {Opcode.CMSG_DEL_IGNORE, 0x0A01},
            {Opcode.CMSG_VOICE_DEL_IGNORE, 0x0A81},
            {Opcode.CMSG_DESTROY_ITEM, 0x0DC4},
            {Opcode.CMSG_DISMISS_CRITTER, 0x074C},
            {Opcode.CMSG_DUEL_ACCEPTED, 0x082D},
            {Opcode.CMSG_DUEL_CANCELLED, 0x0AA1},
            {Opcode.CMSG_DUNGEON_FINDER_GET_SYSTEM_INFO, 0x00AF},
            {Opcode.CMSG_EJECT_PASSENGER, 0x01FF},
            {Opcode.CMSG_EMOTE, 0x0B60},
            {Opcode.CMSG_ENABLE_NAGLE, 0x0C66},
            {Opcode.CMSG_ENABLE_TAXI_NODE, 0x04A4},
            {Opcode.CMSG_EQUIPMENT_SET_DELETE, 0x0C69},
            {Opcode.CMSG_SAVE_EQUIPMENT_SET, 0x0C81},
            {Opcode.CMSG_EQUIPMENT_SET_USE, 0x0168},
            {Opcode.CMSG_FAR_SIGHT, 0x0D48},
            {Opcode.CMSG_QUERY_GAME_OBJECT, 0x0BE9},
            {Opcode.CMSG_GAME_OBJ_REPORT_USE, 0x0969},
            {Opcode.CMSG_GAME_OBJ_USE, 0x0288},
            {Opcode.CMSG_MAIL_GET_LIST, 0x02A8},
            {Opcode.CMSG_GM_TICKET_RESPONSE_RESOLVE, 0x06A9},
            {Opcode.CMSG_GM_SURVEY_SUBMIT, 0x0A84},
            {Opcode.CMSG_GM_TICKET_CREATE, 0x0440},
            {Opcode.CMSG_GM_TICKET_DELETE_TICKET, 0x0DE5},
            {Opcode.CMSG_GM_TICKET_GET_TICKET, 0x0F68},
            {Opcode.CMSG_GM_TICKET_GET_SYSTEM_STATUS, 0x09C9},
            {Opcode.CMSG_GM_TICKET_UPDATE_TEXT, 0x0069},
            {Opcode.CMSG_GM_LAG_REPORT, 0x0588},
            {Opcode.CMSG_GOSSIP_HELLO, 0x0764},
            {Opcode.CMSG_GOSSIP_SELECT_OPTION, 0x08A8},
            {Opcode.CMSG_GRANT_LEVEL, 0x03CD},
            {Opcode.CMSG_GROUP_CHANGE_SUB_GROUP, 0x01C2},
            {Opcode.CMSG_GROUP_DISBAND, 0x01A6},
            {Opcode.CMSG_GROUP_INVITE, 0x016F},
            {Opcode.CMSG_GROUP_INVITE_RESPONSE, 0x0593},
            {Opcode.CMSG_GROUP_RAID_CONVERT, 0x010E},
            {Opcode.CMSG_GROUP_REQUEST_JOIN_UPDATES, 0x0F37},
            {Opcode.CMSG_GROUP_SET_LEADER, 0x00CA},
            {Opcode.CMSG_GROUP_SET_ROLES, 0x0616},
            {Opcode.CMSG_GROUP_SWAP_SUB_GROUP, 0x0D9F},
            {Opcode.CMSG_GROUP_UNINVITE_GUID, 0x0FBE},
            {Opcode.CMSG_GUILD_ACCEPT, 0x0E33},
            {Opcode.CMSG_GUILD_ADD_RANK, 0x0846},
            {Opcode.CMSG_GUILD_ASSIGN_MEMBER_RANK, 0x0A67},
            {Opcode.CMSG_GUILD_BANK_ACTIVATE, 0x06C0},
            {Opcode.CMSG_GUILD_BANK_QUERY_TAB, 0x0F64},
            {Opcode.CMSG_GUILD_BANK_SWAP_ITEMS, 0x0EA9},
            {Opcode.CMSG_GUILD_BANK_UPDATE_TAB, 0x0B8C},
            {Opcode.CMSG_GUILD_DECLINE_INVITATION, 0x0766},
            {Opcode.CMSG_GUILD_DELETE_RANK, 0x07C7},
            {Opcode.CMSG_GUILD_DEMOTE_MEMBER, 0x0B46},
            {Opcode.CMSG_GUILD_DISBAND, 0x0A22},
            {Opcode.CMSG_GUILD_GET_RANKS, 0x08A6},
            {Opcode.CMSG_GUILD_GET_ROSTER, 0x0743},
            {Opcode.CMSG_GUILD_INFO_TEXT, 0x08A2},
            {Opcode.CMSG_GUILD_INVITE, 0x092F},
            {Opcode.CMSG_GUILD_LEAVE, 0x09EA},
            {Opcode.CMSG_GUILD_MEMBER_SEND_SOR_REQUEST, 0x08C7},
            {Opcode.CMSG_GUILD_MOTD, 0x0983},
            {Opcode.CMSG_GUILD_PROMOTE_MEMBER, 0x0967},
            {Opcode.CMSG_QUERY_GUILD_INFO, 0x0684},
            {Opcode.CMSG_GUILD_QUERY_NEWS, 0x0B47},
            {Opcode.CMSG_GUILD_QUERY_RECIPES, 0x0843},
            {Opcode.CMSG_GUILD_REQUEST_MAX_DAILY_XP, 0x05EF},
            {Opcode.CMSG_REQUEST_GUILD_PARTY_STATE, 0x0722},
            {Opcode.CMSG_GUILD_SET_GUILD_MASTER, 0x09A2},
            {Opcode.CMSG_GUILD_SET_NOTE, 0x0A83},
            {Opcode.CMSG_GUILD_SET_RANK_PERMISSIONS, 0x0907},
            {Opcode.CMSG_GUILD_SWITCH_RANK, 0x08E2},
            {Opcode.CMSG_HEARTH_AND_RESURRECT, 0x056D},
            {Opcode.CMSG_INITIATE_TRADE, 0x003F},
            {Opcode.CMSG_INSPECT, 0x05A3},
            {Opcode.CMSG_INSTANCE_LOCK_WARNING_RESPONSE, 0x0D44},
            {Opcode.CMSG_ITEM_PURCHASE_REFUND, 0x09B3},
            {Opcode.CMSG_ITEM_TEXT_QUERY, 0x0B68},
            {Opcode.CMSG_CHAT_JOIN_CHANNEL, 0x03E7},
            {Opcode.CMSG_LEARN_TALENTS, 0x0136},
            {Opcode.CMSG_CHAT_LEAVE_CHANNEL, 0x07F6},
            {Opcode.CMSG_LFG_JOIN, 0x06B3},
            {Opcode.CMSG_LFG_LEAVE, 0x051E},
            {Opcode.CMSG_LFG_LFR_LEAVE, 0x0FB2},
            {Opcode.CMSG_LFG_PROPOSAL_RESULT, 0x0182},
            {Opcode.CMSG_LFG_SET_BOOT_VOTE, 0x0696},
            {Opcode.CMSG_LFG_SET_COMMENT, 0x0CB6},
            {Opcode.CMSG_LFG_SET_ROLES, 0x0497},
            {Opcode.CMSG_LFG_TELEPORT, 0x0023},
            {Opcode.CMSG_LF_GUILD_ADD_RECRUIT, 0x041E},
            {Opcode.CMSG_LF_GUILD_BROWSE, 0x053F},
            {Opcode.CMSG_LF_GUILD_DECLINE_RECRUIT, 0x0746},
            {Opcode.CMSG_LF_GUILD_GET_APPLICATIONS, 0x05EE},
            {Opcode.CMSG_LF_GUILD_GET_GUILD_POST, 0x09A3},
            {Opcode.CMSG_LF_GUILD_GET_RECRUITS, 0x0A47},
            {Opcode.CMSG_LF_GUILD_REMOVE_RECRUIT, 0x0AA6},
            {Opcode.CMSG_LF_GUILD_SET_GUILD_POST, 0x0CB7},
            {Opcode.CMSG_LIST_INVENTORY, 0x0F8D},
            {Opcode.CMSG_LOADING_SCREEN_NOTIFY, 0x0006},
            {Opcode.CMSG_LOGOUT_CANCEL, 0x07C0},
            {Opcode.CMSG_LOG_DISCONNECT, 0x0D47},
            {Opcode.CMSG_LOOT_UNIT, 0x072E},
            {Opcode.CMSG_LOOT_CURRENCY, 0x08BB},
            {Opcode.CMSG_LOOT_MONEY, 0x08D7},
            {Opcode.CMSG_LOOT_RELEASE, 0x0B13},
            {Opcode.CMSG_LOW_LEVEL_RAID1, 0x0141},
            {Opcode.CMSG_MAIL_CREATE_TEXT_ITEM, 0x0948},
            {Opcode.CMSG_MAIL_DELETE, 0x0A5F},
            {Opcode.CMSG_MAIL_MARK_AS_READ, 0x0AA0},
            {Opcode.CMSG_MAIL_RETURN_TO_SENDER, 0x0B9E},
            {Opcode.CMSG_MAIL_TAKE_ITEM, 0x0AC8},
            {Opcode.CMSG_MAIL_TAKE_MONEY, 0x0848},
            {Opcode.CMSG_CHAT_ADDON_MESSAGE_BATTLEGROUND, 0x05D3},
            {Opcode.CMSG_CHAT_ADDON_MESSAGE_GUILD, 0x02AA},
            {Opcode.CMSG_CHAT_ADDON_MESSAGE_OFFICER, 0x0327},
            {Opcode.CMSG_CHAT_ADDON_MESSAGE_PARTY, 0x04FB},
            {Opcode.CMSG_CHAT_ADDON_MESSAGE_RAID, 0x0282},
            {Opcode.CMSG_CHAT_ADDON_MESSAGE_WHISPER, 0x0D77},
            {Opcode.CMSG_CHAT_MESSAGE_AFK, 0x0267},
            {Opcode.CMSG_CHAT_MESSAGE_BATTLEGROUND, 0x036F},
            {Opcode.CMSG_CHAT_MESSAGE_CHANNEL, 0x067E},
            {Opcode.CMSG_CHAT_MESSAGE_DND, 0x0FFB},
            {Opcode.CMSG_CHAT_MESSAGE_EMOTE, 0x02CE},
            {Opcode.CMSG_CHAT_MESSAGE_GUILD, 0x057E},
            {Opcode.CMSG_CHAT_MESSAGE_OFFICER, 0x030A},
            {Opcode.CMSG_CHAT_MESSAGE_PARTY, 0x02AB},
            {Opcode.CMSG_CHAT_MESSAGE_RAID, 0x0246},
            {Opcode.CMSG_CHAT_MESSAGE_RAID_WARNING, 0x0CDE},
            {Opcode.CMSG_CHAT_MESSAGE_SAY, 0x067A},
            {Opcode.CMSG_CHAT_MESSAGE_WHISPER, 0x0306},
            {Opcode.CMSG_CHAT_MESSAGE_YELL, 0x0F7F},
            {Opcode.CMSG_MOUNT_SPECIAL_ANIM, 0x0985},
            {Opcode.CMSG_MOVE_CHANGE_TRANSPORT, 0x064A},
            {Opcode.CMSG_MOVE_FALL_RESET, 0x0AFF},
            {Opcode.CMSG_MOVE_FORCE_FLIGHT_SPEED_CHANGE_ACK, 0x06C7},
            {Opcode.CMSG_MOVE_FORCE_RUN_SPEED_CHANGE_ACK, 0x0336},
            {Opcode.CMSG_MOVE_FORCE_SWIM_BACK_SPEED_CHANGE_ACK, 0x033F},
            {Opcode.CMSG_MOVE_FORCE_SWIM_SPEED_CHANGE_ACK, 0x01B6},
            {Opcode.CMSG_MOVE_FORCE_WALK_SPEED_CHANGE_ACK, 0x093F},
            {Opcode.CMSG_MOVE_HOVER_ACK, 0x0376},
            {Opcode.CMSG_MOVE_SET_CAN_FLY_ACK, 0x007E},
            {Opcode.CMSG_NAME_QUERY, 0x01EC},
            {Opcode.CMSG_NEXT_CINEMATIC_CAMERA, 0x08A5},
            {Opcode.CMSG_QUERY_NPC_TEXT, 0x02E5},
            {Opcode.CMSG_OBJECT_UPDATE_FAILED, 0x02FB},
            {Opcode.CMSG_OBJECT_UPDATE_RESCUED, 0x06A6},
            {Opcode.CMSG_OFFER_PETITION, 0x0AE1},
            {Opcode.CMSG_OPENING_CINEMATIC, 0x0CC0},
            {Opcode.CMSG_OPEN_ITEM, 0x07E0},
            {Opcode.CMSG_OPT_OUT_OF_LOOT, 0x0BE0},
            {Opcode.CMSG_QUERY_PAGE_TEXT, 0x0B61},
            {Opcode.CMSG_PETITION_BUY, 0x0021},
            {Opcode.CMSG_PETITION_QUERY, 0x0BE4},
            {Opcode.CMSG_PETITION_SHOW_LIST, 0x0E80},
            {Opcode.CMSG_PETITION_SIGN, 0x0268},
            {Opcode.CMSG_PET_ACTION, 0x0208},
            {Opcode.CMSG_PET_CANCEL_AURA, 0x03AD},
            {Opcode.CMSG_PET_CAST_SPELL, 0x0A4C},
            {Opcode.CMSG_QUERY_PET_NAME, 0x0789},
            {Opcode.CMSG_PET_STOP_ATTACK, 0x0468},
            {Opcode.CMSG_PING, 0x0CA7},
            {Opcode.CMSG_REQUEST_PLAYED_TIME, 0x0F84},
            {Opcode.CMSG_PLAYER_LOGIN, 0x0EBA},
            {Opcode.CMSG_PLAYER_LOGOUT, 0x05A0},
            {Opcode.CMSG_PLAY_DANCE, 0x0BA8},
            {Opcode.CMSG_CLIENT_PORT_GRAVEYARD, 0x083F},
            {Opcode.CMSG_PUSH_QUEST_TO_PARTY, 0x06C4},
            {Opcode.CMSG_QUERY_COUNTDOWN_TIMER, 0x050F},
            {Opcode.CMSG_QUERY_INSPECT_ACHIEVEMENTS, 0x09E1},
            {Opcode.CMSG_QUERY_TIME, 0x058D},
            {Opcode.CMSG_QUEST_GIVER_ACCEPT_QUEST, 0x0AAD},
            {Opcode.CMSG_QUEST_GIVER_CHOOSE_REWARD, 0x0DA1},
            {Opcode.CMSG_QUEST_GIVER_COMPLETE_QUEST, 0x0144},
            {Opcode.CMSG_QUEST_GIVER_HELLO, 0x096D},
            {Opcode.CMSG_QUEST_GIVER_QUERY_QUEST, 0x0BE8},
            {Opcode.CMSG_QUEST_GIVER_REQUEST_REWARD, 0x004C},
            {Opcode.CMSG_QUEST_GIVER_STATUS_MULTIPLE_QUERY, 0x0BA1},
            {Opcode.CMSG_QUEST_GIVER_STATUS_QUERY, 0x0F69},
            {Opcode.CMSG_QUEST_CONFIRM_ACCEPT, 0x0941},
            {Opcode.CMSG_QUERY_QUEST_COMPLETION_NPCS, 0x0952},
            {Opcode.CMSG_QUEST_POI_QUERY, 0x0EC0},
            {Opcode.CMSG_QUERY_QUEST_INFO, 0x012C},
            {Opcode.CMSG_GENERATE_RANDOM_CHARACTER_NAME, 0x004E},
            {Opcode.CMSG_READY_FOR_ACCOUNT_DATA_TIMES, 0x05A5},
            {Opcode.CMSG_READ_ITEM, 0x0429},
            {Opcode.CMSG_REALM_QUERY, 0x0A4D},
            {Opcode.CMSG_REALM_SPLIT, 0x0261},
            {Opcode.CMSG_RECLAIM_CORPSE, 0x0324},
            {Opcode.CMSG_REPAIR_ITEM, 0x0CA4},
            {Opcode.CMSG_CHAT_REPORT_IGNORED, 0x03EB},
            {Opcode.CMSG_REPOP_REQUEST, 0x0093},
            {Opcode.CMSG_REQUEST_ACCOUNT_DATA, 0x0A08},
            {Opcode.CMSG_REQUEST_CATEGORY_COOLDOWNS, 0x08D2},
            {Opcode.CMSG_REQUEST_GUILD_REWARDS_LIST, 0x0177},
            {Opcode.CMSG_REQUEST_PET_INFO, 0x0068},
            {Opcode.CMSG_GET_PVP_OPTIONS_ENABLED, 0x0417},
            {Opcode.CMSG_REQUEST_RAID_INFO, 0x0D29},
            {Opcode.CMSG_RESET_INSTANCES, 0x0B2C},
            {Opcode.CMSG_ROLE_POLL_BEGIN, 0x01EB},
            {Opcode.CMSG_SAVE_CUF_PROFILES, 0x08F3},
            {Opcode.CMSG_SELF_RES, 0x0ACC},
            {Opcode.CMSG_SELL_ITEM, 0x02CC},
            {Opcode.CMSG_SEND_MAIL, 0x0E9B},
            {Opcode.CMSG_SEND_SOR_REQUEST_VIA_ADDRESS, 0x079F},
            {Opcode.CMSG_SEND_SOR_REQUEST_VIA_BNET_ACCOUNT_ID, 0x012F},
            {Opcode.CMSG_SET_ACTION_BAR_TOGGLES, 0x01C0},
            {Opcode.CMSG_SET_ACTION_BUTTON, 0x004B},
            {Opcode.CMSG_SET_ACTIVE_MOVER, 0x0522},
            {Opcode.CMSG_SET_ASSISTANT_LEADER, 0x071E},
            {Opcode.CMSG_SET_CHANNEL_WATCH, 0x034D},
            {Opcode.CMSG_SET_CONTACT_NOTES, 0x0408},
            {Opcode.CMSG_SET_FACTION_AT_WAR, 0x05ED},
            {Opcode.CMSG_SET_FACTION_INACTIVE, 0x0C6D},
            {Opcode.CMSG_SET_PLAYER_DECLINED_NAMES, 0x0244},
            {Opcode.CMSG_SET_RELATIVE_POSITION, 0x0727},
            {Opcode.CMSG_SET_SAVED_INSTANCE_EXTEND, 0x0E4D},
            {Opcode.CMSG_SET_SELECTION, 0x017E},
            {Opcode.CMSG_SET_SPECIALIZATION, 0x02FF},
            {Opcode.CMSG_SET_TAXI_BENCHMARK_MODE, 0x0F08},
            {Opcode.CMSG_SET_TITLE, 0x0C44},
            {Opcode.CMSG_SET_WATCHED_FACTION, 0x0E49},
            {Opcode.CMSG_SHOWING_CLOAK, 0x0685},
            {Opcode.CMSG_SHOWING_HELM, 0x0A00},
            {Opcode.CMSG_SOCKET_GEMS, 0x0808},
            {Opcode.CMSG_SPELL_CLICK, 0x0AE8},
            {Opcode.CMSG_SPIRIT_HEALER_ACTIVATE, 0x03C4},
            {Opcode.CMSG_SPLIT_ITEM, 0x0960},
            {Opcode.CMSG_STAND_STATE_CHANGE, 0x0BA5},
            {Opcode.CMSG_STOP_DANCE, 0x0C08},
            {Opcode.CMSG_SUPPORT_TICKET_SUBMIT_BUG, 0x0D12},
            {Opcode.CMSG_SUPPORT_TICKET_SUBMIT_COMPLAINT, 0x01AA},
            {Opcode.CMSG_SUMMON_RESPONSE, 0x0D00},
            {Opcode.CMSG_SUSPEND_TOKEN_RESPONSE, 0x0E23},
            {Opcode.CMSG_SWAP_INV_ITEM, 0x0428},
            {Opcode.CMSG_SWAP_ITEM, 0x04A1},
            {Opcode.CMSG_TAXI_NODE_STATUS_QUERY, 0x0B00},
            {Opcode.CMSG_TAXI_QUERY_AVAILABLE_NODES, 0x086C},
            {Opcode.CMSG_TELEPORT_TO_UNIT, 0x00A6},
            {Opcode.CMSG_SEND_TEXT_EMOTE, 0x0284},
            {Opcode.CMSG_TIME_SYNC_RESPONSE, 0x0B5F},
            {Opcode.CMSG_TOGGLE_PVP, 0x0004},
            {Opcode.CMSG_TRAINER_BUY_SPELL, 0x03EC},
            {Opcode.CMSG_TRAINER_LIST, 0x0CA0},
            {Opcode.CMSG_TUTORIAL_CLEAR, 0x0885},
            {Opcode.CMSG_TUTORIAL_FLAG, 0x07AC},
            {Opcode.CMSG_TUTORIAL_RESET, 0x0B05},
            {Opcode.CMSG_UI_TIME_REQUEST, 0x0780},
            {Opcode.CMSG_UNACCEPT_TRADE, 0x02F2},
            {Opcode.CMSG_UNLEARN_SKILL, 0x0709},
            {Opcode.CMSG_UNLEARN_SPECIALIZATION, 0x0BF7},
            {Opcode.CMSG_UPDATE_ACCOUNT_DATA, 0x0D41},
            {Opcode.CMSG_USED_FOLLOW, 0x09DA},
            {Opcode.CMSG_USE_ITEM, 0x0220},
            {Opcode.CMSG_VIOLENCE_LEVEL, 0x0056},
            {Opcode.CMSG_VOICE_SESSION_ENABLE, 0x0F0C},
            {Opcode.CMSG_QUERY_VOID_STORAGE, 0x08B7},
            {Opcode.CMSG_VOID_STORAGE_TRANSFER, 0x089B},
            {Opcode.CMSG_UNLOCK_VOID_STORAGE, 0x009E},
            {Opcode.CMSG_SWAP_VOID_ITEM, 0x0B33},
            {Opcode.CMSG_WARDEN_DATA, 0x0796},
            {Opcode.CMSG_WARGAME_ACCEPT, 0x00AA},
            {Opcode.CMSG_WHO, 0x0D20},
            {Opcode.CMSG_WHO_IS, 0x0E25},
            {Opcode.CMSG_WRAP_ITEM, 0x076C},
            {Opcode.CMSG_ZONEUPDATE, 0x088D}
        };

        private static readonly BiDictionary<Opcode, int> ServerOpcodes = new BiDictionary<Opcode, int>
        {
            {Opcode.SMSG_ACCOUNT_DATA_TIMES, 0x0E48},
            {Opcode.SMSG_ACCOUNT_INFO_RESPONSE, 0x0659},
            {Opcode.SMSG_ACHIEVEMENT_EARNED, 0x0719},
            {Opcode.SMSG_ACTIVATE_TAXI_REPLY, 0x0E88},
            {Opcode.SMSG_ADDON_INFO, 0x0760},
            {Opcode.SMSG_ADD_RUNE_POWER, 0x026D},
            {Opcode.SMSG_AI_REACTION, 0x00C4},
            {Opcode.SMSG_ALL_ACHIEVEMENT_DATA, 0x0618},
            {Opcode.SMSG_ALL_GUILD_ACHIEVEMENTS, 0x09F5},
            {Opcode.SMSG_AREA_TRIGGER_DEBUG_PLAYER_INSIDE, 0x0131},
            {Opcode.SMSG_AREA_TRIGGER_DEBUG_SWEEP, 0x0B98},
            {Opcode.SMSG_AREA_TRIGGER_MESSAGE, 0x0F01},
            {Opcode.SMSG_AREA_TRIGGER_NO_CORPSE, 0x0824},
            {Opcode.SMSG_AREA_TRIGGER_RESET, 0x07F8},
            {Opcode.SMSG_ARENA_ERROR, 0x0BEC},
            {Opcode.SMSG_ARENA_TEAM_CHANGE_FAILED_QUEUED, 0x0DE9},
            {Opcode.SMSG_ARENA_TEAM_COMMAND_RESULT, 0x05B4},
            {Opcode.SMSG_ARENA_TEAM_EVENT, 0x01C9},
            {Opcode.SMSG_ARENA_TEAM_INVITE, 0x09CC},
            {Opcode.SMSG_ARENA_TEAM_QUERY_RESPONSE, 0x00A9},
            {Opcode.SMSG_ARENA_TEAM_ROSTER, 0x0100},
            {Opcode.SMSG_ARENA_TEAM_STATS, 0x00A0},
            {Opcode.SMSG_ATTACKER_STATE_UPDATE, 0x04E8},
            {Opcode.SMSG_ATTACK_START, 0x0EA8},
            {Opcode.SMSG_ATTACK_STOP, 0x0DE4},
            {Opcode.SMSG_AUCTION_BIDDER_NOTIFICATION, 0x01E5},
            {Opcode.SMSG_AUCTION_LIST_BIDDER_ITEMS_RESULT, 0x0F24},
            {Opcode.SMSG_AUCTION_LIST_OWNER_ITEMS_RESULT, 0x04CC},
            {Opcode.SMSG_AUCTION_LIST_PENDING_SALES, 0x0200},
            {Opcode.SMSG_AUCTION_LIST_RESULT, 0x0D09},
            {Opcode.SMSG_AUCTION_OWNER_NOTIFICATION, 0x03C9},
            {Opcode.SMSG_AUCTION_REMOVED_NOTIFICATION, 0x0A29},
            {Opcode.SMSG_AURA_POINTS_DEPLETED, 0x0095},
            {Opcode.SMSG_AURA_UPDATE, 0x07AD},
            {Opcode.SMSG_AURA_UPDATE_ALL, 0x0484},
            {Opcode.SMSG_AUTH_CHALLENGE, 0x0CAF},
            {Opcode.SMSG_AUTH_RESPONSE, 0x0A15},
            {Opcode.SMSG_AVAILABLE_VOICE_CHANNEL, 0x03E1},
            {Opcode.SMSG_AVERAGE_ITEM_LEVEL_INFORM, 0x031D},
            {Opcode.SMSG_BATTLEFIELD_LIST, 0x0530},
            {Opcode.SMSG_BATTLEFIELD_MGR_EJECTED, 0x07F1},
            {Opcode.SMSG_BATTLEFIELD_MGR_EJECT_PENDING, 0x0E54},
            {Opcode.SMSG_BATTLEFIELD_MGR_ENTERING, 0x0EB5},
            {Opcode.SMSG_BATTLEFIELD_MGR_ENTRY_INVITE, 0x0C3D},
            {Opcode.SMSG_BATTLEFIELD_MGR_EXIT_REQUEST, 0x0E78},
            {Opcode.SMSG_BATTLEFIELD_MGR_QUEUE_INVITE, 0x0C1D},
            {Opcode.SMSG_BATTLEFIELD_MGR_QUEUE_REQUEST_RESPONSE, 0x0F35},
            {Opcode.SMSG_BATTLEFIELD_MGR_STATE_CHANGE, 0x0C75},
            {Opcode.SMSG_BATTLEFIELD_PLAYER_POSITIONS, 0x0734},
            {Opcode.SMSG_BATTLEFIELD_PORT_DENIED, 0x001D},
            {Opcode.SMSG_BATTLEFIELD_RATED_INFO, 0x01FC},
            {Opcode.SMSG_BATTLEFIELD_STATUS, 0x049C},
            {Opcode.SMSG_BATTLEFIELD_STATUS_ACTIVE, 0x023C},
            {Opcode.SMSG_BATTLEFIELD_STATUS_FAILED, 0x06B4},
            {Opcode.SMSG_BATTLEFIELD_STATUS_NEED_CONFIRMATION, 0x0F51},
            {Opcode.SMSG_BATTLEFIELD_STATUS_QUEUED, 0x08F9},
            {Opcode.SMSG_BATTLEFIELD_STATUS_WAIT_FOR_GROUPS, 0x02B0},
            {Opcode.SMSG_BATTLEGROUND_INFO_THROTTLED, 0x0315},
            {Opcode.SMSG_BATTLEGROUND_PLAYER_JOINED, 0x00DC},
            {Opcode.SMSG_BATTLEGROUND_PLAYER_LEFT, 0x01FD},
            {Opcode.SMSG_BATTLE_PET_DELETED, 0x0434},
            {Opcode.SMSG_BATTLE_PET_ERROR, 0x0819},
            {Opcode.SMSG_BATTLE_PETS_HEALED, 0x0B10},
            {Opcode.SMSG_BATTLE_PET_JOURNAL, 0x0098},
            {Opcode.SMSG_BATTLE_PET_JOURNAL_LOCK_ACQUIRED, 0x09DD},
            {Opcode.SMSG_BATTLE_PET_JOURNAL_LOCK_DENIED, 0x0C58},
            {Opcode.SMSG_BATTLE_PET_LICENSE_CHANGED, 0x03F9},
            {Opcode.SMSG_BATTLE_PET_TRAP_LEVEL, 0x0339},
            {Opcode.SMSG_BATTLE_PET_UPDATES, 0x0CFC},
            {Opcode.SMSG_BINDER_CONFIRM, 0x0949},
            {Opcode.SMSG_BIND_POINT_UPDATE, 0x070D},
            {Opcode.SMSG_BUY_FAILED, 0x0525},
            {Opcode.SMSG_BUY_SUCCEEDED, 0x0329},
            {Opcode.SMSG_CALENDAR_COMMAND_RESULT, 0x0349},
            {Opcode.SMSG_CALENDAR_EVENT_INVITE_ALERT, 0x0BCD},
            {Opcode.SMSG_CALENDAR_EVENT_REMOVED_ALERT, 0x05C5},
            {Opcode.SMSG_CALENDAR_SEND_EVENT, 0x05AD},
            {Opcode.SMSG_CALENDAR_SEND_NUM_PENDING, 0x0B0C},
            {Opcode.SMSG_CAMERA_SHAKE, 0x0505},
            {Opcode.SMSG_CANCEL_AUTO_REPEAT, 0x044},
            {Opcode.SMSG_CAST_FAILED, 0x0D84},
            {Opcode.SMSG_CHANNEL_LIST, 0x0560},
            {Opcode.SMSG_CHANNEL_MEMBER_COUNT, 0x0C45},
            {Opcode.SMSG_CHANNEL_NOTIFY, 0x044D},
            {Opcode.SMSG_CHARACTER_LOGIN_FAILED, 0x0C0D},
            {Opcode.SMSG_CREATE_CHAR, 0x0F25},
            {Opcode.SMSG_DELETE_CHAR, 0x0E44},
            {Opcode.SMSG_ENUM_CHARACTERS_RESULT, 0x033D},
            {Opcode.SMSG_CHAT_IGNORED_ACCOUNT_MUTED, 0x0115},
            {Opcode.SMSG_CHAT_SERVER_RECONNECTED, 0x0444},
            {Opcode.SMSG_CHAT_WRONG_FACTION, 0x0801},
            {Opcode.SMSG_CLEAR_BOSS_EMOTES, 0x0259},
            {Opcode.SMSG_CLEAR_COOLDOWNS, 0x0890},
            {Opcode.SMSG_CLEAR_FAR_SIGHT_IMMEDIATE, 0x0381},
            {Opcode.SMSG_CLEAR_TARGET, 0x0ECC},
            {Opcode.SMSG_CACHE_VERSION, 0x072D},
            {Opcode.SMSG_CHAT, 0x0009},
            {Opcode.SMSG_CONTROL_UPDATE, 0x0578},
            {Opcode.SMSG_COMBAT_EVENT_FAILED, 0x0D24},
            {Opcode.SMSG_COMMENTATOR_PARTY_INFO, 0x0871},
            {Opcode.SMSG_COMPRESSED_MOVES, 0x0781},
            {Opcode.SMSG_CONTACT_LIST, 0x0785},
            {Opcode.SMSG_CONVERT_RUNE, 0x0C2C},
            {Opcode.SMSG_CORPSE_MAP_POSITION_QUERY_RESPONSE, 0x084D},
            {Opcode.SMSG_CORPSE_RECLAIM_DELAY, 0x0504},
            {Opcode.SMSG_QUERY_CREATURE_RESPONSE, 0x0AA4},
            {Opcode.SMSG_CRITERIA_UPDATE, 0x060D},
            {Opcode.SMSG_CROSSED_INEBRIATION_THRESHOLD, 0x0AED},
            {Opcode.SMSG_CURRENCY_LOOT_REMOVED, 0x0F1D},
            {Opcode.SMSG_CUSTOM_LOAD_SCREEN, 0x06F9},
            {Opcode.SMSG_DAMAGE_CALC_LOG, 0x01C1},
            {Opcode.SMSG_DANCE_QUERY_RESPONSE, 0x0209},
            {Opcode.SMSG_DB_REPLY, 0x059C},
            {Opcode.SMSG_DEATH_RELEASE_LOC, 0x0541},
            {Opcode.SMSG_RUNE_REGEN_DEBUG, 0x0CD0},
            {Opcode.SMSG_DEFENSE_MESSAGE, 0x0385},
            {Opcode.SMSG_DESTROY_OBJECT, 0x034C},
            {Opcode.SMSG_DIFFERENT_INSTANCE_FROM_PARTY, 0x0D91},
            {Opcode.SMSG_DISENCHANT_CREDIT, 0x0990},
            {Opcode.SMSG_DISMOUNT, 0x0708},
            {Opcode.SMSG_DISMOUNT_RESULT, 0x06C8},
            {Opcode.SMSG_DISPLAY_GAME_ERROR, 0x0A11},
            {Opcode.SMSG_DONT_AUTO_PUSH_SPELLS_TO_ACTION_BAR, 0x0318},
            {Opcode.SMSG_DROP_NEW_CONNECTION, 0x0C2F},
            {Opcode.SMSG_DUEL_COMPLETE, 0x0A6C},
            {Opcode.SMSG_DUEL_COUNTDOWN, 0x0A0C},
            {Opcode.SMSG_DUEL_REQUESTED, 0x022D},
            {Opcode.SMSG_DUEL_WINNER, 0x0CE9},
            {Opcode.SMSG_DUMP_RIDE_TICKETS_RESPONSE, 0x0AB5},
            {Opcode.SMSG_DURABILITY_DAMAGE_DEATH, 0x0961},
            {Opcode.SMSG_ECHO_PARTY_SQUELCH, 0x03E8},
            {Opcode.SMSG_EMOTE, 0x0DC8},
            {Opcode.SMSG_ENVIRONMENTAL_DAMAGE_LOG, 0x0600},
            {Opcode.SMSG_EXPECTED_SPAM_RECORDS, 0x092C},
            {Opcode.SMSG_EXPLORATION_EXPERIENCE, 0x00AC},
            {Opcode.SMSG_FAILED_PLAYER_CONDITION, 0x077D},
            {Opcode.SMSG_FEATURE_SYSTEM_STATUS, 0x07F9},
            {Opcode.SMSG_FEIGN_DEATH_RESISTED, 0x0A85},
            {Opcode.SMSG_FISH_ESCAPED, 0x0D88},
            {Opcode.SMSG_FISH_NOT_HOOKED, 0x00CD},
            {Opcode.SMSG_FLIGHT_SPLINE_SYNC, 0x0248},
            {Opcode.SMSG_FLOOD_DETECTED, 0x0A2A},
            {Opcode.SMSG_FORCE_SET_VEHICLE_REC_ID, 0x0631},
            {Opcode.SMSG_FORGE_MASTER_SET, 0x0B39},
            {Opcode.SMSG_FRIEND_STATUS, 0x05C0},
            {Opcode.SMSG_GAME_OBJECT_ACTIVATE_ANIM_KIT, 0x0B19},
            {Opcode.SMSG_QUERY_GAME_OBJECT_RESPONSE, 0x080D},
            {Opcode.SMSG_GAME_EVENT_DEBUG_LOG, 0x0291},
            {Opcode.SMSG_GMRESPONSE_DB_ERROR, 0x05E8},
            {Opcode.SMSG_GMRESPONSE_RECEIVED, 0x0D64},
            {Opcode.SMSG_GMRESPONSE_STATUS_UPDATE, 0x01A8},
            {Opcode.SMSG_GM_TICKET_CREATE, 0x0568},
            {Opcode.SMSG_GM_TICKET_GET_SYSTEM_STATUS, 0x0EF4},
            {Opcode.SMSG_GM_TICKET_UPDATE_TEXT, 0x0501},
            {Opcode.SMSG_GM_MESSAGECHAT, 0x036D},
            {Opcode.SMSG_GM_PLAYER_INFO, 0x00A4},
            {Opcode.SMSG_GM_TICKET_STATUS_UPDATE, 0x0E8C},
            {Opcode.SMSG_GOD_MODE, 0x0F89},
            {Opcode.SMSG_GOSSIP_COMPLETE, 0x08A4},
            {Opcode.SMSG_GOSSIP_MESSAGE, 0x088C},
            {Opcode.SMSG_GOSSIP_POI, 0x0E45},
            {Opcode.SMSG_GROUP_CANCEL, 0x0925},
            {Opcode.SMSG_GROUP_DECLINE, 0x09C1},
            {Opcode.SMSG_GROUP_INVITE, 0x0574},
            {Opcode.SMSG_GROUP_LIST, 0x0620},
            {Opcode.SMSG_GROUP_SET_LEADER, 0x0D71},
            {Opcode.SMSG_GUILD_ACHIEVEMENT_DELETED, 0x0694},
            {Opcode.SMSG_GUILD_ACHIEVEMENT_EARNED, 0x0474},
            {Opcode.SMSG_GUILD_ACHIEVEMENT_MEMBERS, 0x0B71},
            {Opcode.SMSG_GUILD_BANK_QUERY_RESULTS, 0x0ED1},
            {Opcode.SMSG_GUILD_BANK_LOG_QUERY_RESULTS, 0x0774},
            {Opcode.SMSG_GUILD_BANK_REMAINING_WITHDRAW_MONEY, 0x08B8},
            {Opcode.SMSG_GUILD_BANK_TEXT_QUERY_RESULT, 0x02F5},
            {Opcode.SMSG_GUILD_CHALLENGE_COMPLETED, 0x04F9},
            {Opcode.SMSG_GUILD_CHALLENGE_UPDATE, 0x0F3D},
            {Opcode.SMSG_GUILD_CHANGE_NAME_RESULT, 0x04D9},
            {Opcode.SMSG_GUILD_COMMAND_RESULT, 0x09FC},
            {Opcode.SMSG_GUILD_COMMAND_RESULT_2, 0x0580},
            {Opcode.SMSG_GUILD_CRITERIA_DATA, 0x0799},
            {Opcode.SMSG_GUILD_CRITERIA_DELETED, 0x08D9},
            {Opcode.SMSG_GUILD_DECLINE, 0x0B4C},
            {Opcode.SMSG_GUILD_EVENT_LOG_QUERY_RESULTS, 0x08B4},
            {Opcode.SMSG_GUILD_FLAGGED_FOR_RENAME, 0x0050},
            {Opcode.SMSG_GUILD_INVITE, 0x0D30},
            {Opcode.SMSG_GUILD_MAX_DAILY_XP, 0x0510},
            {Opcode.SMSG_GUILD_MEMBERS_FOR_RECIPE, 0x0411},
            {Opcode.SMSG_GUILD_MEMBER_DAILY_RESET, 0x0554},
            {Opcode.SMSG_GUILD_MEMBER_UPDATE_NOTE, 0x0AB4},
            {Opcode.SMSG_GUILD_MOVE_COMPLETE, 0x08FC},
            {Opcode.SMSG_GUILD_MOVE_STARTING, 0x0730},
            {Opcode.SMSG_GUILD_NEWS_DELETED, 0x0F7C},
            {Opcode.SMSG_GUILD_NEWS_UPDATE, 0x07D0},
            {Opcode.SMSG_GUILD_PARTY_STATE, 0x08BD},
            {Opcode.SMSG_GUILD_PERMISSIONS_QUERY_RESULTS, 0x089C},
            {Opcode.SMSG_QUERY_GUILD_INFO_RESPONSE, 0x08C9},
            {Opcode.SMSG_GUILD_RANKS, 0x0D50},
            {Opcode.SMSG_GUILD_KNOWN_RECIPES, 0x04FC},
            {Opcode.SMSG_GUILD_RENAMED, 0x0851},
            {Opcode.SMSG_GUILD_REPUTATION_REACTION_CHANGED, 0x0F59},
            {Opcode.SMSG_GUILD_REPUTATION_WEEKLY_CAP, 0x061C},
            {Opcode.SMSG_GUILD_RESET, 0x01F9},
            {Opcode.SMSG_GUILD_REWARD_LIST, 0x055D},
            {Opcode.SMSG_GUILD_ROSTER, 0x0A75},
            {Opcode.SMSG_GUILD_ROSTER_UPDATE, 0x0270},
            {Opcode.SMSG_GUILD_SEND_RANK_CHANGE, 0x03B0},
            {Opcode.SMSG_GUILD_XP, 0x0BF9},
            {Opcode.SMSG_GUILD_XP_GAIN, 0x0C10},
            {Opcode.SMSG_HIGHEST_THREAT_UPDATE, 0x0825},
            {Opcode.SMSG_HOTFIX_NOTIFY, 0x05B0},
            {Opcode.SMSG_INITIALIZE_FACTIONS, 0x0384},
            {Opcode.SMSG_SEND_KNOWN_SPELLS, 0x0155},
            {Opcode.SMSG_INIT_WORLD_STATES, 0x010C},
            {Opcode.SMSG_INSPECT_HONOR_STATS, 0x05D0},
            {Opcode.SMSG_INSPECT_RATED_BG_STATS, 0x02B5},
            {Opcode.SMSG_INSPECT_RESULTS_UPDATE, 0x04DD},
            {Opcode.SMSG_INSTANCE_RESET, 0x08C0},
            {Opcode.SMSG_INSTANCE_RESET_FAILED, 0x0DE0},
            {Opcode.SMSG_INSTANCE_SAVE_CREATED, 0x08E4},
            {Opcode.SMSG_INVALIDATE_DANCE, 0x09E8},
            {Opcode.SMSG_INVALIDATE_PLAYER, 0x01A5},
            {Opcode.SMSG_INVALID_PROMOTION_CODE, 0x0965},
            {Opcode.SMSG_INVENTORY_CHANGE_FAILURE, 0x0529},
            {Opcode.SMSG_ITEM_ADD_PASSIVE, 0x07F0},
            {Opcode.SMSG_ITEM_COOLDOWN, 0x03A5},
            {Opcode.SMSG_ITEM_ENCHANT_TIME_UPDATE, 0x0488},
            {Opcode.SMSG_ITEM_EXPIRE_PURCHASE_REFUND, 0x0795},
            {Opcode.SMSG_ITEM_PUSH_RESULT, 0x0E51},
            {Opcode.SMSG_ITEM_PURCHASE_REFUND_RESULT, 0x07B5},
            {Opcode.SMSG_ITEM_REMOVE_PASSIVE, 0x0439},
            {Opcode.SMSG_ITEM_SEND_PASSIVE, 0x08DD},
            {Opcode.SMSG_QUERY_ITEM_TEXT_RESPONSE, 0x0125},
            {Opcode.SMSG_ITEM_TIME_UPDATE, 0x0D61},
            {Opcode.SMSG_LEARNED_DANCE_MOVES, 0x05E0},
            {Opcode.SMSG_LEARNED_SPELLS, 0x06B5},
            {Opcode.SMSG_LEVEL_UP_INFO, 0x0664},
            {Opcode.SMSG_LFG_JOIN_RESULT, 0x0BF8},
            {Opcode.SMSG_LFG_OFFER_CONTINUE, 0x04C4},
            {Opcode.SMSG_LFG_PARTY_INFO, 0x0348},
            {Opcode.SMSG_LFG_PLAYER_INFO, 0x0EC9},
            {Opcode.SMSG_LFG_PLAYER_REWARD, 0x0ACD},
            {Opcode.SMSG_LFG_PROPOSAL_UPDATE, 0x0DD5},
            {Opcode.SMSG_LFG_QUEUE_STATUS, 0x0950},
            {Opcode.SMSG_LFG_ROLE_CHECK_UPDATE, 0x08B0},
            {Opcode.SMSG_LFG_SLOT_INVALID, 0x06D4},
            {Opcode.SMSG_LFG_TELEPORT_DENIED, 0x09BD},
            {Opcode.SMSG_LFG_UPDATE_SEARCH, 0x005C},
            {Opcode.SMSG_LFG_UPDATE_STATUS, 0x0154},
            {Opcode.SMSG_LFG_UPDATE_STATUS_NONE, 0x0ABD},
            {Opcode.SMSG_LF_GUILD_APPLICANT_LIST_CHANGED, 0x0355},
            {Opcode.SMSG_LF_GUILD_APPLICATIONS_LIST_CHANGED, 0x0130},
            {Opcode.SMSG_LF_GUILD_BROWSE_UPDATED, 0x0019},
            {Opcode.SMSG_LF_GUILD_COMMAND_RESULT, 0x0570},
            {Opcode.SMSG_LF_GUILD_POST_UPDATED, 0x0E91},
            {Opcode.SMSG_LF_GUILD_RECRUIT_LIST_UPDATED, 0x045D},
            {Opcode.SMSG_VENDOR_INVENTORY, 0x0D3D},
            {Opcode.SMSG_LOAD_CUF_PROFILES, 0x0179},
            {Opcode.SMSG_LOAD_EQUIPMENT_SET, 0x0061},
            {Opcode.SMSG_LOGIN_SET_TIME_SPEED, 0x0E68},
            {Opcode.SMSG_LOGIN_VERIFY_WORLD, 0x0B6C},
            {Opcode.SMSG_LOGOUT_CANCEL_ACK, 0x0F6C},
            {Opcode.SMSG_LOGOUT_COMPLETE, 0x02A0},
            {Opcode.SMSG_LOGOUT_RESPONSE, 0x09A5},
            {Opcode.SMSG_LOG_XP_GAIN, 0x0660},
            {Opcode.SMSG_LOOT_CONTENTS, 0x0DB1},
            {Opcode.SMSG_LOOT_LIST, 0x0A45},
            {Opcode.SMSG_LOOT_MONEY_NOTIFY, 0x0B38},
            {Opcode.SMSG_LOOT_RELEASE, 0x0670},
            {Opcode.SMSG_LOOT_REMOVED, 0x01F0},
            {Opcode.SMSG_LOOT_RESPONSE, 0x0D98},
            {Opcode.SMSG_LOOT_ROLL, 0x077C},
            {Opcode.SMSG_LOOT_ROLL_WON, 0x053C},
            {Opcode.SMSG_LOOT_START_ROLL, 0x0334},
            {Opcode.SMSG_MAIL_LIST_RESULT, 0x068D},
            {Opcode.SMSG_MAP_OBJ_EVENTS, 0x0A7C},
            {Opcode.SMSG_MESSAGE_BOX, 0x08D1},
            {Opcode.SMSG_MINIGAME_SETUP, 0x0928},
            {Opcode.SMSG_MIRROR_IMAGE_COMPONENTED_DATA, 0x0E65},
            {Opcode.SMSG_MISSILE_CANCEL, 0x0CF9},
            {Opcode.SMSG_MONEY_NOTIFY, 0x099C},
            {Opcode.SMSG_MONSTER_MOVE_TRANSPORT, 0x036C},
            {Opcode.SMSG_MOTD, 0x0849},
            {Opcode.SMSG_MOUNT_RESULT, 0x08E0},
            {Opcode.SMSG_MOUNT_SPECIAL_ANIM, 0x0388},
            {Opcode.SMSG_MOVE_DISABLE_TRANSITION_BETWEEN_SWIM_AND_FLY, 0x00D4},
            {Opcode.SMSG_MOVE_DISABLE_COLLISION, 0x0D54},
            {Opcode.SMSG_MOVE_DISABLE_GRAVITY, 0x0DD0},
            {Opcode.SMSG_MOVE_ENABLE_TRANSITION_BETWEEN_SWIM_AND_FLY, 0x0459},
            {Opcode.SMSG_MOVE_ENABLE_COLLISION, 0x07D4},
            {Opcode.SMSG_MOVE_ENABLE_GRAVITY, 0x0C79},
            {Opcode.SMSG_MOVE_KNOCK_BACK, 0x0194},
            {Opcode.SMSG_MOVE_ROOT, 0x0955},
            {Opcode.SMSG_MOVE_SET_ACTIVE_MOVER, 0x07DC},
            {Opcode.SMSG_MOVE_SET_CAN_FLY, 0x0419},
            {Opcode.SMSG_MOVE_SET_COLLISION_HEIGHT, 0x099D},
            {Opcode.SMSG_MOVE_SET_COMPOUND_STATE, 0x0C34},
            {Opcode.SMSG_MOVE_SET_FEATHER_FALL, 0x09F4},
            {Opcode.SMSG_MOVE_SET_FLIGHT_BACK_SPEED, 0x0159},
            {Opcode.SMSG_MOVE_SET_FLIGHT_SPEED, 0x05FD},
            {Opcode.SMSG_MOVE_SET_HOVERING, 0x0251},
            {Opcode.SMSG_MOVE_SET_LAND_WALK, 0x0D94},
            {Opcode.SMSG_MOVE_SET_NORMAL_FALL, 0x0C9D},
            {Opcode.SMSG_MOVE_SET_PITCH_RATE, 0x0351},
            {Opcode.SMSG_MOVE_SET_RUN_BACK_SPEED, 0x0394},
            {Opcode.SMSG_MOVE_SET_RUN_SPEED, 0x0231},
            {Opcode.SMSG_MOVE_SET_SWIM_BACK_SPEED, 0x0475},
            {Opcode.SMSG_MOVE_SET_SWIM_SPEED, 0x009D},
            {Opcode.SMSG_MOVE_SET_TURN_RATE, 0x0234},
            {Opcode.SMSG_MOVE_SET_WALK_SPEED, 0x0DD1},
            {Opcode.SMSG_MOVE_SET_WATER_WALK, 0x021C},
            {Opcode.SMSG_MOVE_SPLINE_DISABLE_COLLISION, 0x0034},
            {Opcode.SMSG_MOVE_SPLINE_DISABLE_GRAVITY, 0x0B55},
            {Opcode.SMSG_MOVE_SPLINE_ENABLE_COLLISION, 0x0A70},
            {Opcode.SMSG_MOVE_SPLINE_ENABLE_GRAVITY, 0x04F8},
            {Opcode.SMSG_MOVE_SPLINE_ROOT, 0x075D},
            {Opcode.SMSG_MOVE_SPLINE_SET_FEATHER_FALL, 0x041D},
            {Opcode.SMSG_MOVE_SPLINE_SET_FLIGHT_BACK_SPEED, 0x0DD4},
            {Opcode.SMSG_MOVE_SPLINE_SET_FLIGHT_SPEED, 0x0BB0},
            {Opcode.SMSG_MOVE_SPLINE_SET_FLYING, 0x0D5D},
            {Opcode.SMSG_MOVE_SPLINE_SET_HOVER, 0x04F4},
            {Opcode.SMSG_MOVE_SPLINE_SET_LAND_WALK, 0x0B31},
            {Opcode.SMSG_MOVE_SPLINE_SET_NORMAL_FALL, 0x0854},
            {Opcode.SMSG_MOVE_SPLINE_SET_PITCH_RATE, 0x0594},
            {Opcode.SMSG_MOVE_SPLINE_SET_RUN_BACK_SPEED, 0x0438},
            {Opcode.SMSG_MOVE_SPLINE_SET_RUN_MODE, 0x0319},
            {Opcode.SMSG_MOVE_SPLINE_SET_RUN_SPEED, 0x04B1},
            {Opcode.SMSG_MOVE_SPLINE_SET_SWIM_BACK_SPEED, 0x0D70},
            {Opcode.SMSG_MOVE_SPLINE_SET_SWIM_SPEED, 0x0970},
            {Opcode.SMSG_MOVE_SPLINE_SET_TURN_RATE, 0x0A34},
            {Opcode.SMSG_MOVE_SPLINE_SET_WALK_BACK_SPEED, 0x0539},
            {Opcode.SMSG_MOVE_SPLINE_SET_WALK_MODE, 0x0531},
            {Opcode.SMSG_MOVE_SPLINE_SET_WATER_WALK, 0x0211},
            {Opcode.SMSG_MOVE_SPLINE_START_SWIM, 0x07D5},
            {Opcode.SMSG_MOVE_SPLINE_STOP_SWIM, 0x071D},
            {Opcode.SMSG_MOVE_SPLINE_UNROOT, 0x039D},
            {Opcode.SMSG_MOVE_SPLINE_UNSET_FLYING, 0x0255},
            {Opcode.SMSG_MOVE_SPLINE_UNSET_HOVER, 0x0698},
            {Opcode.SMSG_MOVE_UNROOT, 0x015C},
            {Opcode.SMSG_MOVE_UNSET_CAN_FLY, 0x063D},
            {Opcode.SMSG_MOVE_UNSET_HOVERING, 0x03B1},
            {Opcode.SMSG_MOVE_UPDATE, 0x0294},
            {Opcode.SMSG_MOVE_UPDATE_COLLISION_HEIGHT, 0x0DD8},
            {Opcode.SMSG_MOVE_UPDATE_FLIGHT_BACK_SPEED, 0x0B15},
            {Opcode.SMSG_MOVE_UPDATE_FLIGHT_SPEED, 0x0895},
            {Opcode.SMSG_MOVE_UPDATE_KNOCK_BACK, 0x0175},
            {Opcode.SMSG_MOVE_UPDATE_PITCH_RATE, 0x0B70},
            {Opcode.SMSG_MOVE_UPDATE_RUN_BACK_SPEED, 0x08B5},
            {Opcode.SMSG_MOVE_UPDATE_RUN_SPEED, 0x049D},
            {Opcode.SMSG_MOVE_UPDATE_SWIM_BACK_SPEED, 0x07BC},
            {Opcode.SMSG_MOVE_UPDATE_SWIM_SPEED, 0x06B8},
            {Opcode.SMSG_MOVE_UPDATE_TELEPORT, 0x0E1D},
            {Opcode.SMSG_MOVE_UPDATE_TURN_RATE, 0x0BB5},
            {Opcode.SMSG_MOVE_UPDATE_WALK_SPEED, 0x03B8},
            {Opcode.SMSG_MULTIPLE_PACKETS, 0x0EEC},
            {Opcode.SMSG_QUERY_PLAYER_NAME_RESPONSE, 0x030D},
            {Opcode.SMSG_NEUTRAL_PLAYER_FACTION_SELECT_RESULT, 0x08F5},
            {Opcode.SMSG_NEW_TAXI_PATH, 0x016C},
            {Opcode.SMSG_NEW_WORLD, 0x081D},
            {Opcode.SMSG_NEW_WORLD_ABORT, 0x0295},
            {Opcode.SMSG_NOTIFICATION, 0x0218},
            {Opcode.SMSG_NOTIFY_DANCE, 0x018D},
            {Opcode.SMSG_QUERY_NPC_TEXT_RESPONSE, 0x0544},
            {Opcode.SMSG_OFFER_PETITION_ERROR, 0x050D},
            {Opcode.SMSG_ON_MONSTER_MOVE, 0x02A5},
            {Opcode.SMSG_OPEN_CONTAINER, 0x0A24},
            {Opcode.SMSG_OVERRIDE_LIGHT, 0x04C8},
            {Opcode.SMSG_QUERY_PAGE_TEXT_RESPONSE, 0x05A4},
            {Opcode.SMSG_PARTY_COMMAND_RESULT, 0x0980},
            {Opcode.SMSG_SPELL_PERIODIC_AURA_LOG, 0x0540},
            {Opcode.SMSG_PETGODMODE, 0x0260},
            {Opcode.SMSG_PETITION_ALREADY_SIGNED, 0x0C39},
            {Opcode.SMSG_PETITION_QUERY_RESPONSE, 0x07E4},
            {Opcode.SMSG_PETITION_SHOW_LIST, 0x0DAD},
            {Opcode.SMSG_PETITION_SHOW_SIGNATURES, 0x0AC5},
            {Opcode.SMSG_PETITION_SIGN_RESULTS, 0x0129},
            {Opcode.SMSG_PET_ACTION_FEEDBACK, 0x0508},
            {Opcode.SMSG_PET_ACTION_SOUND, 0x0D6D},
            {Opcode.SMSG_PET_ADDED, 0x013C},
            {Opcode.SMSG_PET_BATTLE_CHAT_RESTRICTED, 0x0874},
            {Opcode.SMSG_PET_BATTLE_FINALIZE_LOCATION, 0x03FC},
            {Opcode.SMSG_PET_BATTLE_FINAL_ROUND, 0x0199},
            {Opcode.SMSG_PET_BATTLE_FINISHED, 0x0B75},
            {Opcode.SMSG_PET_BATTLE_FIRST_ROUND, 0x0BD8},
            {Opcode.SMSG_PET_BATTLE_FULL_UPDATE, 0x0D35},
            {Opcode.SMSG_PET_BATTLE_MAX_GAME_LENGTH_WARNING, 0x0E50},
            {Opcode.SMSG_PET_BATTLE_PVP_CHALLENGE, 0x0DDD},
            {Opcode.SMSG_PET_BATTLE_QUEUE_PROPOSE_MATCH, 0x0D11},
            {Opcode.SMSG_PET_BATTLE_QUEUE_STATUS, 0x0610},
            {Opcode.SMSG_PET_BATTLE_REPLACEMENTS_MADE, 0x0ED4},
            {Opcode.SMSG_PET_BATTLE_REQUEST_FAILED, 0x0CB0},
            {Opcode.SMSG_PET_BATTLE_ROUND_RESULT, 0x031C},
            {Opcode.SMSG_PET_DISMISS_SOUND, 0x0380},
            {Opcode.SMSG_PET_GUIDS, 0x06C9},
            {Opcode.SMSG_PET_LEARNED_SPELLS, 0x0E71},
            {Opcode.SMSG_PET_MODE, 0x0EC1},
            {Opcode.SMSG_QUERY_PET_NAME_RESPONSE, 0x0464},
            {Opcode.SMSG_PET_UNLEARNED_SPELLS, 0x0B30},
            {Opcode.SMSG_PET_SLOT_UPDATED, 0x0A5D},
            {Opcode.SMSG_PET_SPECIALIZATION, 0x05BC},
            {Opcode.SMSG_PET_SPELLS_MESSAGE, 0x0EAC},
            {Opcode.SMSG_PET_UPDATE_COMBO_POINTS, 0x0360},
            {Opcode.SMSG_PLAYED_TIME, 0x0944},
            {Opcode.SMSG_PLAYERBINDERROR, 0x0EC4},
            {Opcode.SMSG_PLAYER_BOUND, 0x0D4D},
            {Opcode.SMSG_PLAYER_DIFFICULTY_CHANGE, 0x0A6D},
            {Opcode.SMSG_PLAYER_SKINNED, 0x018C},
            {Opcode.SMSG_PLAYER_VEHICLE_DATA, 0x0CA1},
            {Opcode.SMSG_PLAY_DANCE, 0x02C1},
            {Opcode.SMSG_PLAY_MUSIC, 0x012D},
            {Opcode.SMSG_PLAY_OBJECT_SOUND, 0x0EC8},
            {Opcode.SMSG_PLAY_SOUND, 0x0C88},
            {Opcode.SMSG_PLAY_SPELL_VISUAL, 0x0F55},
            {Opcode.SMSG_PLAY_SPELL_VISUAL_KIT, 0x0230},
            {Opcode.SMSG_PLAY_TIME_WARNING, 0x0AC9},
            {Opcode.SMSG_PONG, 0x08AE},
            {Opcode.SMSG_POWER_UPDATE, 0x026C},
            {Opcode.SMSG_PRE_RESSURECT, 0x0821},
            {Opcode.SMSG_PROPOSE_LEVEL_GRANT, 0x0601},
            {Opcode.SMSG_PVP_CREDIT, 0x0D04},
            {Opcode.SMSG_PVP_LOG_DATA, 0x0C5D},
            {Opcode.SMSG_PVP_OPTIONS_ENABLED, 0x0A78},
            {Opcode.SMSG_QUERY_QUESTS_COMPLETED_RESPONSE, 0x0E7D},
            {Opcode.SMSG_QUEST_GIVER_OFFER_REWARD_MESSAGE, 0x00E4},
            {Opcode.SMSG_QUEST_GIVER_QUEST_COMPLETE, 0x0E35},
            {Opcode.SMSG_QUEST_GIVER_QUEST_DETAILS, 0x08A0},
            {Opcode.SMSG_QUEST_GIVER_QUEST_FAILED, 0x0105},
            {Opcode.SMSG_QUEST_GIVER_INVALID_QUEST, 0x0CE1},
            {Opcode.SMSG_QUEST_GIVER_QUEST_LIST_MESSAGE, 0x0048},
            {Opcode.SMSG_QUEST_GIVER_REQUEST_ITEMS, 0x0DC5},
            {Opcode.SMSG_QUEST_GIVER_STATUS, 0x0888},
            {Opcode.SMSG_QUEST_GIVER_STATUS_MULTIPLE, 0x0D8D},
            {Opcode.SMSG_QUEST_CONFIRM_ACCEPT, 0x0308},
            {Opcode.SMSG_QUEST_LOG_FULL, 0x09C0},
            {Opcode.SMSG_QUEST_POI_QUERY_RESPONSE, 0x0741},
            {Opcode.SMSG_QUERY_QUEST_INFO_RESPONSE, 0x0D40},
            {Opcode.SMSG_QUEST_UPDATE_ADD_KILL, 0x0E61},
            {Opcode.SMSG_QUEST_UPDATE_ADD_PVP_CREDIT, 0x0629},
            {Opcode.SMSG_QUEST_UPDATE_FAILED_TIMER, 0x06A5},
            {Opcode.SMSG_RAID_INSTANCE_INFO, 0x089D},
            {Opcode.SMSG_RAID_INSTANCE_MESSAGE, 0x00C5},
            {Opcode.SMSG_RAID_MARKERS_CHANGED, 0x0930},
            {Opcode.SMSG_RAID_SUMMON_FAILED, 0x0C31},
            {Opcode.SMSG_GENERATE_RANDOM_CHARACTER_NAME_RESULT, 0x0B74},
            {Opcode.SMSG_RATED_BG_RATING, 0x0935},
            {Opcode.SMSG_RATED_BATTLEFIELD_INFO, 0x0418},
            {Opcode.SMSG_READ_ITEM_RESULT_FAILED, 0x00C9},
            {Opcode.SMSG_READ_ITEM_RESULT_OK, 0x08CD},
            {Opcode.SMSG_REALM_QUERY_RESPONSE, 0x0D81},
            {Opcode.SMSG_REALM_SPLIT, 0x05CC},
            {Opcode.SMSG_RECEIVED_MAIL, 0x02A1},
            {Opcode.SMSG_CONNECT_TO, 0x082B},
            {Opcode.SMSG_REFER_A_FRIEND_EXPIRED, 0x0F0D},
            {Opcode.SMSG_REFER_A_FRIEND_FAILURE, 0x0C64},
            {Opcode.SMSG_REFORGE_RESULT, 0x095D},
            {Opcode.SMSG_REPORT_PVP_AFK_RESULT, 0x03A4},
            {Opcode.SMSG_REQUEST_CEMETERY_LIST_RESPONSE, 0x0075},
            {Opcode.SMSG_REQUEST_PVP_REWARDS_RESPONSE, 0x023D},
            {Opcode.SMSG_RESEARCH_COMPLETE, 0x0F99},
            {Opcode.SMSG_SETUP_RESEARCH_HISTORY, 0x0D7C},
            {Opcode.SMSG_RESET_COMPRESSION_CONTEXT, 0x0E2F},
            {Opcode.SMSG_RESPOND_INSPECT_ACHIEVEMENTS, 0x07B8},
            {Opcode.SMSG_RESTRICTED_ACCOUNT_WARNING, 0x0CD8},
            {Opcode.SMSG_RESUME_COMMS, 0x0E2B},
            {Opcode.SMSG_RESURRECT_REQUEST, 0x0CC8},
            {Opcode.SMSG_RESYNC_RUNES, 0x0CE4},
            {Opcode.SMSG_ROLE_POLL_BEGIN, 0x0F15},
            {Opcode.SMSG_RWHOIS, 0x0F04},
            {Opcode.SMSG_SELL_ITEM, 0x03C8},
            {Opcode.SMSG_SEND_UNLEARN_SPELLS, 0x0DF5},
            {Opcode.SMSG_SERVER_FIRST_ACHIEVEMENT, 0x0D78},
            {Opcode.SMSG_SERVER_INFO_RESPONSE, 0x00F4},
            {Opcode.SMSG_CHAT_SERVER_MESSAGE, 0x0700},
            {Opcode.SMSG_SERVER_PERF, 0x0F79},
            {Opcode.SMSG_SETUP_CURRENCY, 0x04D0},
            {Opcode.SMSG_SET_DF_FAST_LAUNCH_RESULT, 0x09D0},
            {Opcode.SMSG_SET_FACTION_AT_WAR, 0x0485},
            {Opcode.SMSG_SET_FACTION_STANDING, 0x0465},
            {Opcode.SMSG_SET_FACTION_VISIBLE, 0x008D},
            {Opcode.SMSG_SET_FLAT_SPELL_MODIFIER, 0x0CED},
            {Opcode.SMSG_SET_FORCED_REACTIONS, 0x0565},
            {Opcode.SMSG_SET_PCT_SPELL_MODIFIER, 0x0108},
            {Opcode.SMSG_PHASE_SHIFT_CHANGE, 0x05F4},
            {Opcode.SMSG_SET_PLAY_HOVER_ANIM, 0x0F58},
            {Opcode.SMSG_SET_PROFICIENCY, 0x0DC1},
            {Opcode.SMSG_SHOW_BANK, 0x0B65},
            {Opcode.SMSG_SHOW_NEUTRAL_PLAYER_FACTION_SELECT_UI, 0x0CF1},
            {Opcode.SMSG_SHOW_RATINGS, 0x0AD0},
            {Opcode.SMSG_SHOW_TAXI_NODES, 0x0424},
            {Opcode.SMSG_SOCKET_GEMS, 0x07EC},
            {Opcode.SMSG_SOR_START_EXPERIENCE_INCOMPLETE, 0x0A99},
            {Opcode.SMSG_CATEGORY_COOLDOWN, 0x0DD9},
            {Opcode.SMSG_SPELL_COOLDOWN, 0x03A1},
            {Opcode.SMSG_SPELL_DAMAGE_SHIELD, 0x0049},
            {Opcode.SMSG_SPELL_ENERGIZE_LOG, 0x0688},
            {Opcode.SMSG_SPELL_EXECUTE_LOG, 0x0300},
            {Opcode.SMSG_SPELL_FAILURE, 0x0241},
            {Opcode.SMSG_SPELL_GO, 0x0C8D},
            {Opcode.SMSG_SPELL_HEAL_LOG, 0x04E4},
            {Opcode.SMSG_SPELL_INSTAKILL_LOG, 0x00C0},
            {Opcode.SMSG_SPELL_INTERRUPT_LOG, 0x0635},
            {Opcode.SMSG_SPELL_MISS_LOG, 0x0F88},
            {Opcode.SMSG_SPELL_NON_MELEE_DAMAGE_LOG, 0x0E2C},
            {Opcode.SMSG_SPELL_OR_DAMAGE_IMMUNE, 0x0F65},
            {Opcode.SMSG_SPELL_START, 0x09E4},
            {Opcode.SMSG_STABLE_RESULT, 0x0EE5},
            {Opcode.SMSG_STAND_STATE_UPDATE, 0x0180},
            {Opcode.SMSG_START_TIMER, 0x09B0},
            {Opcode.SMSG_STOP_DANCE, 0x0680},
            {Opcode.SMSG_STREAMING_MOVIES, 0x09FD},
            {Opcode.SMSG_SUMMON_REQUEST, 0x092D},
            {Opcode.SMSG_SUPERCEDED_SPELLS, 0x05D8},
            {Opcode.SMSG_SUPPRESS_NPC_GREETINGS, 0x02FC},
            {Opcode.SMSG_SUSPEND_COMMS, 0x082A},
            {Opcode.SMSG_TALENTS_ERROR, 0x0058},
            {Opcode.SMSG_UPDATE_TALENT_DATA, 0x0BAC},
            {Opcode.SMSG_TALENTS_INVOLUNTARILY_RESET, 0x0AA9},
            {Opcode.SMSG_TAXI_NODE_STATUS, 0x03E9},
            {Opcode.SMSG_TEXT_EMOTE, 0x0E0D},
            {Opcode.SMSG_THREAT_CLEAR, 0x0800},
            {Opcode.SMSG_THREAT_REMOVE, 0x0269},
            {Opcode.SMSG_THREAT_UPDATE, 0x054C},
            {Opcode.SMSG_TIME_ADJUSTMENT, 0x04F1},
            {Opcode.SMSG_TIME_SYNC_REQUEST, 0x0410},
            {Opcode.SMSG_TITLE_EARNED, 0x0645},
            {Opcode.SMSG_TOGGLE_XP_GAIN, 0x03E5},
            {Opcode.SMSG_TOTEM_CREATED, 0x0469},
            {Opcode.SMSG_TRADE_STATUS, 0x05B1},
            {Opcode.SMSG_TRAINER_BUY_FAILED, 0x0BC8},
            {Opcode.SMSG_TRAINER_LIST, 0x0DCD},
            {Opcode.SMSG_TRANSFER_ABORTED, 0x07E1},
            {Opcode.SMSG_TRANSFER_PENDING, 0x0EBC},
            {Opcode.SMSG_TRIGGER_CINEMATIC, 0x048D},
            {Opcode.SMSG_TRIGGER_MOVIE, 0x080C},
            {Opcode.SMSG_TURN_IN_PETITION_RESULT, 0x0E28},
            {Opcode.SMSG_TUTORIAL_FLAGS, 0x06A8},
            {Opcode.SMSG_UI_TIME, 0x004D},
            {Opcode.SMSG_UNLEARNED_SPELLS, 0x0A35},
            {Opcode.SMSG_UPDATE_ACCOUNT_DATA, 0x0EE8},
            {Opcode.SMSG_UPDATE_ACCOUNT_DATA_COMPLETE, 0x0548},
            {Opcode.SMSG_UPDATE_ACTION_BUTTONS, 0x0951},
            {Opcode.SMSG_UPDATE_COMBO_POINTS, 0x03E0},
            {Opcode.SMSG_UPDATE_CURRENCY, 0x0918},
            {Opcode.SMSG_UPDATE_DUNGEON_ENCOUNTER_FOR_LOOT, 0x0F9D},
            {Opcode.SMSG_UPDATE_INSTANCE_OWNERSHIP, 0x0E09},
            {Opcode.SMSG_UPDATE_LAST_INSTANCE, 0x0A49},
            {Opcode.SMSG_UPDATE_OBJECT, 0x0120},
            {Opcode.SMSG_UPDATE_SERVER_PLAYER_POSITION, 0x071C},
            {Opcode.SMSG_UPDATE_WORLD_STATE, 0x0AAC},
            {Opcode.SMSG_USERLIST_ADD, 0x03ED},
            {Opcode.SMSG_USERLIST_REMOVE, 0x0325},
            {Opcode.SMSG_USERLIST_UPDATE, 0x07C9},
            {Opcode.SMSG_VOICE_CHAT_STATUS, 0x0C85},
            {Opcode.SMSG_VOICE_PARENTAL_CONTROLS, 0x0CAC},
            {Opcode.SMSG_VOICE_SESSION_LEAVE, 0x0681},
            {Opcode.SMSG_VOICE_SESSION_ROSTER_UPDATE, 0x014D},
            {Opcode.SMSG_VOICE_SET_TALKER_MUTED, 0x0829},
            {Opcode.SMSG_VOID_ITEM_SWAP_RESPONSE, 0x0995},
            {Opcode.SMSG_VOID_STORAGE_CONTENTS, 0x0AB1},
            {Opcode.SMSG_VOID_STORAGE_FAILED, 0x083D},
            {Opcode.SMSG_VOID_STORAGE_TRANSFER_CHANGES, 0x08F0},
            {Opcode.SMSG_VOID_TRANSFER_RESULT, 0x06D8},
            {Opcode.SMSG_WAIT_QUEUE_FINISH, 0x01F8},
            {Opcode.SMSG_WAIT_QUEUE_UPDATE, 0x0E7C},
            {Opcode.SMSG_WARDEN_DATA, 0x06BD},
            {Opcode.SMSG_WARGAME_CHECK_ENTRY, 0x0A58},
            {Opcode.SMSG_WARGAME_REQUEST_SENT, 0x0759},
            {Opcode.SMSG_WEATHER, 0x0860},
            {Opcode.SMSG_WEEKLY_LAST_RESET, 0x00FD},
            {Opcode.SMSG_WEEKLY_RESET_CURRENCY, 0x0911},
            {Opcode.SMSG_WEEKLY_SPELL_USAGE, 0x03B5},
            {Opcode.SMSG_WEEKLY_SPELL_USAGE_UPDATE, 0x0658},
            {Opcode.SMSG_WHO, 0x098C},
            {Opcode.SMSG_WHO_IS, 0x07A5},
            {Opcode.SMSG_WORLD_SERVER_INFO, 0x00D9},
            {Opcode.SMSG_XP_GAIN_ABORTED, 0x0398},
            {Opcode.SMSG_ZONE_UNDER_ATTACK, 0x09E9}
        };

        private static readonly BiDictionary<Opcode, int> MiscOpcodes = new BiDictionary<Opcode, int>
        {
            {Opcode.MSG_AUCTION_HELLO, 0x0C80},
            {Opcode.MSG_CORPSE_QUERY, 0x0D13},
            {Opcode.MSG_INSPECT_ARENA_TEAMS, 0x0204},
            {Opcode.MSG_LIST_STABLED_PETS, 0x08E1},
            {Opcode.MSG_MINIMAP_PING, 0x008A},
            {Opcode.MSG_MOVE_CHARM_TELEPORT_CHEAT, 0x0217},
            {Opcode.MSG_MOVE_FALL_LAND, 0x078B},
            {Opcode.MSG_MOVE_HEARTBEAT, 0x0BD2},
            {Opcode.MSG_MOVE_JUMP, 0x044B},
            {Opcode.MSG_MOVE_SET_FACING, 0x046F},
            {Opcode.MSG_MOVE_SET_PITCH, 0x01D3},
            {Opcode.MSG_MOVE_SET_RUN_MODE, 0x0A1F},
            {Opcode.MSG_MOVE_SET_WALK_MODE, 0x09D2},
            {Opcode.MSG_MOVE_START_ASCEND, 0x083A},
            {Opcode.MSG_MOVE_START_BACKWARD, 0x037A},
            {Opcode.MSG_MOVE_START_DESCEND, 0x0B1B},
            {Opcode.MSG_MOVE_START_FORWARD, 0x00FE},
            {Opcode.MSG_MOVE_START_STRAFE_LEFT, 0x025E},
            {Opcode.MSG_MOVE_START_STRAFE_RIGHT, 0x01FB},
            {Opcode.MSG_MOVE_START_SWIM, 0x03B7},
            {Opcode.MSG_MOVE_START_TURN_LEFT, 0x046E},
            {Opcode.MSG_MOVE_START_TURN_RIGHT, 0x09F7},
            {Opcode.MSG_MOVE_STOP, 0x09DF},
            {Opcode.MSG_MOVE_STOP_ASCEND, 0x0B9B},
            {Opcode.MSG_MOVE_STOP_STRAFE, 0x0ADE},
            {Opcode.MSG_MOVE_STOP_SWIM, 0x0133},
            {Opcode.MSG_MOVE_STOP_TURN, 0x04CB},
            {Opcode.MSG_MOVE_TELEPORT, 0x0371},
            {Opcode.MSG_MOVE_TELEPORT_ACK, 0x037F},
            {Opcode.MSG_MOVE_TELEPORT_CHEAT, 0x0B7F},
            {Opcode.MSG_MOVE_TIME_SKIPPED, 0x0338},
            {Opcode.MSG_PETITION_DECLINE, 0x0405},
            {Opcode.MSG_PETITION_RENAME, 0x01A1},
            {Opcode.MSG_QUERY_NEXT_MAIL_TIME, 0x0609},
            {Opcode.MSG_QUEST_PUSH_RESULT, 0x09A4},
            {Opcode.MSG_RAID_READY_CHECK, 0x069E},
            {Opcode.MSG_RAID_READY_CHECK_CONFIRM, 0x0E98},
            {Opcode.MSG_RAID_READY_CHECK_FINISHED, 0x017C},
            {Opcode.MSG_RAID_TARGET_UPDATE, 0x0512},
            {Opcode.MSG_RANDOM_ROLL, 0x0A5C},
            {Opcode.MSG_RESPEC_WIPE_CONFIRM, 0x052A},
            {Opcode.MSG_SAVE_GUILD_EMBLEM, 0x04CD},
            {Opcode.MSG_SET_DUNGEON_DIFFICULTY, 0x0E0C},
            {Opcode.MSG_SET_RAID_DIFFICULTY, 0x0E00},
            {Opcode.MSG_TABARDVENDOR_ACTIVATE, 0x0729},
            {Opcode.MSG_VERIFY_CONNECTIVITY, 0x4F57}
        };
    }
}
